
package de.koller.oceanFramework.math;

/**
 * 
 * @author Fabian Koller
 */
public interface ROVec3 {

	/**
	 * 
	 * @param v
	 * @return
	 */
	double distance( ROVec3 v );
	/**
	 * 
	 * @return
	 */
	double getLength();
	/**
	 * 
	 * @return
	 */
	double getX();
	/**
	 * 
	 * @return
	 */
	ROVec getXY();
	/**
	 * 
	 * @return
	 */
	float getXf();
	/**
	 * 
	 * @return
	 */
	double getY();
	/**
	 * 
	 * @return
	 */
	float getYf();
	/**
	 * 
	 * @return
	 */
	double getZ();
	/**
	 * 
	 * @return
	 */
	float getZf();
	/**
	 * 
	 * @return
	 */
	Vec3 newInstance();
	
}
